package com.daffodil.monitor.util;

import java.io.Serializable;
import java.util.List;

import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * -指标数据
 * @author yweijian
 * @date 2022年10月13日
 * @version 2.0.0
 * @description
 */
@Data
public class MetricsData implements Serializable {

    private static final long serialVersionUID = 1L;
    
    private String name;
    
    private String description;
    
    private String baseUnit;
    
    private List<Measurement> measurements;
    
    private List<AvailableTag> availableTags;
    
    @Data
    @NoArgsConstructor
    public static class Measurement implements Serializable {
        
        private static final long serialVersionUID = 1L;

        private String statistic;
        
        private Number value;
        
    }
    
    @Data
    @NoArgsConstructor
    public static class AvailableTag implements Serializable {

        private static final long serialVersionUID = 1L;
        
        private String tag;
        
        private List<String> values;
        
    }
}
